雑に見るUp and Running with Remix
https://egghead.io/courses/up-and-running-with-remix-b82b6bb6
https://remix.run/docs/en/1.19.3/tutorials/blog#quickstart の動画版
基素.icon
新しくWebアプリを1つ作ろうとしている。Create react appで作っていたけどメンテナンスモードになっているので不採用。いくつか見た中でRemixを見繕ったのでチュートリアルをやる
せっかくなのでここでやってみる
4
フロント側にもルーティングのAPIを定義できる
レンダリングしなくてもブラウザがリクエストをするのでpublic APIと同じ扱いになる点に注意
これができると何が嬉しいの?基素.icon
loader関数を定義すると
サーバーでレンダリングされてHTMLが返る
ブラウザがアクセスするとfetchした時にデータを受け取れる
へー基素.icon
5
データをロジックのページに直で書くのは嫌だから切り離す
.server.tsはクライアントにはバンドルされないようにcompilerが処理する
6
loaderに型をつけてTypeScriptをわからせる
TypeScript isn't super jazzed about what we're doing in here
GPT-4.icon このフレーズ「TypeScript isn't super jazzed about what we're doing in here」は、カジュアルな言い回しで、TypeScriptがプログラムで行っていることに対して完全に満足していない、または問題があるかもしれないという意味です。
「super jazzed」: 非常に興奮している、または満足しているという意味の俗語
この文脈では: TypeScriptがあなたのコードに対して警告やエラーを出しているかもしれない
つまり: あなたが書いているコードがTypeScriptの厳格な型チェックに完全に合致していない可能性がある
この表現はプログラマー間のカジュアルなコミュニケーションでよく使用されるもので、具体的な問題を指摘しているわけではないことが多いです。
getPosts()の戻り値の型を指定する
typeof getPostsで関数が返るので、ReturnType<typeof getPosts>とする
7
prismaを使ってDBにデータを入れる
schemaを定義してnpx prisma db push
seed